package com.yueyang.sojourn.server.model.vo;

import com.yueyang.sojourn.server.model.po.AttachDetail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 后台订单管理，包含所有信息的订单信息
 * @author Andy.yang
 * @version v1
 * @summary
 * @Copyright (c) 2019, YueYang Group All Rights Reserved.
 * @since 2020/3/21
 */
@Data
@ApiModel("订单信息")
public class SojournOrderListVo {
        /**
         * 主键id
         */
        @ApiModelProperty(value = "主键id")
        private Long id;

        /**
         * 订单流水号
         */
        @ApiModelProperty(value = "订单序号")
        private String sn;

        /**
         * 商品id
         */
        @ApiModelProperty(value = "商品id")
        private Long merchId;
        /**
         * 商品名
         */
        @ApiModelProperty(value = "商品名")
        private String merchTitle;

        /**
         * 商品单价
         */
        @ApiModelProperty(value = "商品单价")
        private BigDecimal merchPrice;

        /**
         * 商品优惠 策略
         **/
        @ApiModelProperty(value = "商品优惠")
        private List<Integer> merchSales;

        /**
         * 商品数量
         **/
        @ApiModelProperty(value = "商品数量")
        private Integer merchCount;

        @ApiModelProperty(value = "商品生效日期")
        private Date merchEffectDate;

        /**优惠后单价**/
        @ApiModelProperty(value = "优惠后单价")
        private BigDecimal discountOnePrice;

        /**
         * '共优惠/减免的钱'
         **/
        @ApiModelProperty(value = "商品减免优惠钱")
        private BigDecimal discounted;

        /**
         * 订单总价
         **/
        @ApiModelProperty(value = "订单总价")
        private BigDecimal totalPrice;

        /**
         * 订单类型：普通商品、会员
         **/
        @ApiModelProperty(value = "订单类型")
        private Integer type;

        /**评价状态**/
        @ApiModelProperty(value = "评价状态：-1：未到点评时状态 1-已评价 0-待评价")
        private Integer evaluateStatus;

        /**
         * 有效状态
         */
        @ApiModelProperty(value = "订单状态:10-待付款; 20-待出行; 30-已成交; 40-已取消; 50-已退款;")
        private Integer status;

        /**
         * 付款时间
         **/
        @ApiModelProperty(value = "付款时间")
        private Date paidTime;

        /**
         * 成交时间
         **/
        @ApiModelProperty(value = "成交时间")
        private Date finishTime;

        /**联系人手机**/
        @ApiModelProperty(value = "联系人手机")
        private String contactPhone;

        /**联系人姓名**/
        @ApiModelProperty(value = "联系人姓名")
        private String contactName;

        /**支付截止时间**/
        @ApiModelProperty(value = "支付截止时间")
        private Date payEndTime;

        /**
         * 创建人
         */
        @ApiModelProperty(value = "创建人id")
        private Long creator;

        /**
         * 创建时间
         */
        @ApiModelProperty(value = "创建时间")
        private Date createdTime;

        /**
         * 更新人
         */
        @ApiModelProperty(value = "更新人id")
        private Long updator;

        /**
         * 更新时间
         */
        @ApiModelProperty(value = "更新人时间")
        private Date updatedTime;

        //-----------项目信息
        /**
         * 项目id
         */
        @ApiModelProperty(value = "项目id")
        private Long merchProjectId;
        /**
         * 项目名
         */
        @ApiModelProperty(value = "项目名")
        private String merchProjectName;

        //-----------下单人信息
        /**
         * 下单人姓名
         */
        @ApiModelProperty(value = "下单人姓名")
        private String creatorName;

        /**
         * 下单人手机号
         */
        @ApiModelProperty(value = "下单人手机号")
        private String creatorPhone;

        //------------商品图片
        @ApiModelProperty(value = "商品图片")
        private AttachDetail picAttachDetail;

        @ApiModelProperty(value = "交易价格：实付款")
        private BigDecimal transPrice;

}
